package com.sinothk.special.buyer.userblog.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.sinothk.special.buyer.userblog.entity.UserBlog;
import com.sinothk.special.buyer.userblog.entity.UserBlogAddVO;
import com.sinothk.special.buyer.userblog.entity.UserBlogDTO;
import com.sinothk.special.buyer.userblog.entity.UserBlogSearchVO;

/**
 * @Description: 个人博客
 * @Author: Liangyt
 * @Date: 2022-03-30
 * @Version: V1.0
 */
public interface IUserBlogService extends IService<UserBlog> {

    void saveVo(UserBlogAddVO userBlogVo);

    /**
     * * 查询-附近热门博客
     *
     * @param userBlogPage
     * @param searchVO
     * @return
     */
    IPage<UserBlogDTO> listForNearbyAndHotBlogs(Page<UserBlogDTO> userBlogPage, UserBlogSearchVO searchVO);

    /**
     * 查询-个人博客
     *
     * @param objectPage
     * @param searchVO
     * @return
     */
    IPage<UserBlogDTO> listBlogsForUser(Page<UserBlogDTO> objectPage, UserBlogSearchVO searchVO) throws Exception;

    /**
     * 查询-好友博客
     *
     * @param objectPage
     * @param searchVO
     * @return
     */
    IPage<UserBlogDTO> listBlogsForILike(Page<UserBlogDTO> objectPage, UserBlogSearchVO searchVO);
}
